Software systems are emerging that enable users to connect to a server and learn about other users currently connected to the system. By learning about which users are presently "online," users can initiate direct communication such as text or audio chat, collaboration such as shared whiteboards or concurrent document editing, and video conferencing. These types of synchronous interactions contrast with traditional interactions such as electronic mail systems, which are inherently asynchronous and do not allow users to exchange data in real-time.
One type of on-line system allows the user to construct a list of other particular users that are of special interest. The software presents a textual list of which of these users are currently connected. These systems may be configured to play a sound whenever one of these "buddies" first becomes connected or becomes disconnected.
A goal of these systems is to provide the user with the experience of being part of an online community of sorts, much like an office building represents a real-world workplace. Within a real-world office, people are acutely aware of approximately how many people are currently in the office. They hear the arrival and departure of their co-workers, and they can quickly glance out of the office to see whether particular co-workers are present.
However, existing software systems do not effectively imitate the environment of an office community for several reasons. First, they require users to inspect the text list whenever they need to determine whether a particular user is currently on-line. Inspecting this list distracts the user from other tasks. Second, the arrival and departure of individual users is not distinguishable because the audio signals are all alike. Finally, the user is only aware of the selected user set. The software provides no indication of how many people, in the aggregate, are currently online.
Therefore, a need exists for a method and system for unobtrusively providing dynamic information about user presence in online environments. This presence information needs to not only include the arrival and departure of particular users but also must reflect the continued presence of those users and an indication of how many users in the aggregate are currently online.